<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<!-- Copyright 1997 The Open Group, All Rights Reserved -->
<title>&lt;sys/ipc.h&gt;</title>
</head><body bgcolor=white>
<center>
<font size=2>
The Single UNIX &reg; Specification, Version 2<br>
Copyright &copy; 1997 The Open Group

</font></center><hr size=2 noshade>
<h4><a name = "tag_000_009_303">&nbsp;</a>NAME</h4><blockquote>
sys/ipc.h - interprocess communication access structure
</blockquote><h4><a name = "tag_000_009_304">&nbsp;</a>SYNOPSIS</h4><blockquote>
<pre><code>

#include &lt;sys/ipc.h&gt;
</code>
</pre>
</blockquote><h4><a name = "tag_000_009_305">&nbsp;</a>DESCRIPTION</h4><blockquote>
The
<i>&lt;sys/ipc.h&gt;</i>
header is used by three mechanisms for interprocess communication (IPC):
messages, semaphores and shared memory.  All use a common structure type,
<b>ipc_perm</b>
to pass information used in determining permission to perform an IPC
operation.
<p>
The structure
<b>ipc_perm</b>
contains the following members:
<pre>
<code>
uid_t    uid    owner's user ID
gid_t    gid    owner's group ID
uid_t    cuid   creator's user ID
gid_t    cgid   creator's group ID
mode_t   mode   read/write permission
</code>
</pre>
<p>
The
<b>uid_t</b>,
<b>gid_t</b>,
<b>mode_t</b>
and
<b>key_t</b>
types are defined as described in
<i><a href="systypes.h.html">&lt;sys/types.h&gt;</a></i>.
<p>
Definitions are given for the following constants:
<p>
Mode bits:
<dl compact>

<dt>IPC_CREAT<dd>
Create entry if key does not exist.

<dt>IPC_EXCL<dd>
Fail if key exists.

<dt>IPC_NOWAIT<dd>
Error if request must wait.

</dl>
<p>
Keys:
<dl compact>

<dt>IPC_PRIVATE<dd>
Private key.

</dl>
<p>
Control commands:
<dl compact>

<dt>IPC_RMID<dd>
Remove identifier.

<dt>IPC_SET<dd>
Set options.

<dt>IPC_STAT<dd>
Get options.

</dl>
<p>
The following is declared as a function and may also be defined as a macro.
Function prototypes must be provided for use with an ISO C
compiler.
<pre>
<code>
key_t  <a href="ftok.html">ftok</a>(const char *, int);
</code>
</pre>
</blockquote><h4><a name = "tag_000_009_306">&nbsp;</a>APPLICATION USAGE</h4><blockquote>
None.
</blockquote><h4><a name = "tag_000_009_307">&nbsp;</a>FUTURE DIRECTIONS</h4><blockquote>
None.
</blockquote><h4><a name = "tag_000_009_308">&nbsp;</a>SEE ALSO</h4><blockquote>
<i><a href="ftok.html">ftok()</a></i>,
<i><a href="systypes.h.html">&lt;sys/types.h&gt;</a></i>.
</blockquote><hr size=2 noshade>
<center><font size=2>
UNIX &reg; is a registered Trademark of The Open Group.<br>
Copyright &copy; 1997 The Open Group
<br> [ <a href="../index.html">Main Index</a> | <a href="../xshix.html">XSH</a> | <a href="../xcuix.html">XCU</a> | <a href="../xbdix.html">XBD</a> | <a href="../cursesix.html">XCURSES</a> | <a href="../xnsix.html">XNS</a> ]

</font></center><hr size=2 noshade>
</body></html>
